package ec.gob.magap.era.web.controller;

import javax.annotation.PostConstruct;
import javax.ejb.EJB;
import javax.ejb.Stateless;
import javax.faces.bean.ManagedBean;
import javax.servlet.http.HttpSession;

import ec.gob.magap.era.entidades.Resultado;
import ec.gob.magap.era.entities.Catalogo;
import ec.gob.magap.era.entities.Usuario;
import ec.gob.magap.era.exceptions.ServicioException;
import ec.gob.magap.era.servicios.interfaces.CatalogoService;
import ec.gob.magap.era.web.general.Utilidades;

@SuppressWarnings("serial")
@Stateless
@ManagedBean
public class ModificarCatalogoController extends BasicoController {

	@EJB(name = "CatalogoServicio")
	private CatalogoService catalogoServicio;
	
	int tipoCatalogo;
	Catalogo catalogoSeleccionado;
	String operacion; 
	String tituloModal;
	
	/**
	 * @return the tituloModal
	 */
	public String getTituloModal() {
		return tituloModal;
	}

	/**
	 * @param tituloModal the tituloModal to set
	 */
	public void setTituloModal(String tituloModal) {
		this.tituloModal = tituloModal;
	}

	/**
	 * @return the operacion
	 */
	public String getOperacion() {
		return operacion;
	}

	/**
	 * @param operacion the operacion to set
	 */
	public void setOperacion(String operacion) {
		this.operacion = operacion;
	}

	/**
	 * @return the catalogoSeleccionado
	 */
	public Catalogo getCatalogoSeleccionado() {
		return catalogoSeleccionado;
	}

	/**
	 * @param catalogoSeleccionado the catalogoSeleccionado to set
	 */
	public void setCatalogoSeleccionado(Catalogo catalogoSeleccionado) {
		this.catalogoSeleccionado = catalogoSeleccionado;
	}

	/**
	 * @return the tipoCatalgo
	 */
	public int getTipoCatalogo() {
		return tipoCatalogo;
	}

	/**
	 * @param tipoCatalgo the tipoCatalgo to set
	 */
	public void setTipoCatalogo(int tipoCatalogo) {
		this.tipoCatalogo = tipoCatalogo;
	}

	@PostConstruct
    public void postContruct() {
		HttpSession session = Utilidades.getSession();
		String strTipoCatalogo = session.getAttribute("TipoCatalogo").toString();
		tipoCatalogo = Integer.parseInt( strTipoCatalogo);
		catalogoSeleccionado = (Catalogo) session.getAttribute("CatalogoSeleccionado");
		
		setUsuario((Usuario) session.getAttribute("UsuarioLogeado"));
		
		operacion = Utilidades.getSession().getAttribute("operacion").toString();
		tituloModal = Utilidades.getSession().getAttribute("tituloModal").toString();
		
		
    }
	public String guardar()
	{
		
		try {
			Resultado resultado = catalogoServicio.GuardarCatalogo(catalogoSeleccionado, operacion);
			if (resultado.getEstado()){
				
				return "catalogo";
			}
		} catch (ServicioException e) {
			System.out.println(e.getMessage());
		}
		return "";
		
		
	}
	public String cancelar(){
		
//		HttpSession session = Utilidades.getSession();
//		session.setAttribute("TipoCatalogo",tipoCatalogo);
//		catalogoSeleccionado.setDescripcion(descripcion);
//		descripcion="";
		
		return "catalogo";
	}
	
}
